package A1_贪心算法;

import java.util.Arrays;
import java.util.LinkedList;

public class LC_406根据身高重建队列 {
    public static void main(String[] args){
        int[][] people= {{7,0},{4,4},{7,1},{5,0},{6,1},{5,2}};
        int[][] res=reconstructQueue(people);
        System.out.println(res);
    }
    public static int[][] reconstructQueue(int[][] people) {
        Arrays.sort(people,(a,b)->{
            if(a[0]==b[0])
                return a[1]-b[1];// a - b 是升序排列，故在a[0] == b[0]的狀況下，會根據k值升序排列
            return b[0]-a[0];//b - a 是降序排列，在a[0] != b[0]，的狀況會根據h值降序排列
        });
        LinkedList<int[]> que=new LinkedList<>();
        for(int i=0;i<people.length;i++){
            int position=people[i][1];
            que.add(position,people[i]);
        }
        return que.toArray(new int[people.length][]);
    }
}
